home *** CD-ROM | disk | FTP | other *** search
- Path: bloom-beacon.mit.edu!senator-bedfellow.mit.edu!faqserv
- From: sibit@datasrv.co.il (Russ Hersch)
- Newsgroups: comp.robotics,comp.sys.intel,comp.sys.m68k,comp.sys.6809,sci.electronics,alt.comp.hardware.homebuilt,comp.answers,sci.answers,alt.answers,news.answers
- Subject: Microcontroller primer and FAQ
- Supersedes: <microcontroller-faq/primer_783264417@rtfm.mit.edu>
- Followup-To: poster
- Date: 27 Nov 1994 15:09:05 GMT
- Organization: none
- Lines: 1607
- Approved: news-answers-request@MIT.EDU
- Expires: 11 Jan 1995 15:08:06 GMT
- Message-ID: <microcontroller-faq/primer_785948886@rtfm.mit.edu>
- NNTP-Posting-Host: bloom-picayune.mit.edu
- Summary: This article is a primer and general FAQ about microcontrollers.
- X-Last-Updated: 1994/11/27
- Originator: faqserv@bloom-picayune.MIT.EDU
- Xref: bloom-beacon.mit.edu comp.robotics:12606 comp.sys.intel:20041 comp.sys.m68k:3825 sci.electronics:69038 alt.comp.hardware.homebuilt:5656 comp.answers:8577 sci.answers:1853 alt.answers:5889 news.answers:30101
-
- Archive-name: microcontroller-faq/primer
- Posting-Frequency: monthly
- Last-modified: Nov. 26, 1994
-
- This article is a primer and general FAQ about microcontrollers.
- Included is a collection of information sources on various
- microcontrollers.
-
- The following topics are addressed:
-
- 0) Rantings and ravings (to make the FAQ zero-based)
-
- 1) ABOUT THIS FAQ
- 1.1) Who put this FAQ together?
- 1.2) How can I contribute to this FAQ?
- 1.3) What newsgroups will this FAQ be posted to?
- 1.4) May I distribute this FAQ or post it somewhere else?
-
- 2) MICROCONTROLLERS
- 2.1) What is a Microcontroller?
- 2.2) Applications
- 2.3) Flavors
- 2.4) Special microcontroller features
- 2.5) Some popular microcontrollers
-
- 3) MICROCONTROLLER PROGRAMMING LANGUAGES
- 3.1) Machine/Assembly language
- 3.2) Interpreters
- 3.3) Compilers
-
- 4) DEVELOPMENT TOOLS
- 4.1) Simulators
- 4.2) Resident Debuggers
- 4.3) Emulators
- 4.4) Good Stereo System
-
- 5) FINDING OUT MORE ABOUT MICROCONTROLLERS
- 5.1) Books
- 5.2) Periodicals
- 5.3) Internet newsgroups
- 5.4) Internet sources of information on specific microcontrollers
-
- 6) MICROCONTROLLER FREE SOFTWARE SOURCES
- 6.1) FTP sites
- 6.2) BBSs
-
-
- 0) Rantings and ravings
-
- Disclaimer: Just so it is understood, the "rantings and ravings" are
- my rantings and raving. My readers are refined and sophisticated and
- would never rant or rave. I, on the other hand, sit in front of the
- TV in torn underwear and drink beer out of the bottle.
-
- The other day I was watching my 8 year old daughter play with her
- Barbie Dolls. She has about 7 or so, including two that used to
- belong to my wife (Roz) when she was a girl. I noticed an
- interesting difference between the old dolls and the new dolls. The
- old Barbies could only move their heads sideways, while the new
- Barbies not only can move their heads sideways, but also up and down.
- AMAZING - the old Barbies were good girls - they could only say no.
- The new Barbies however can also say yes. Progress - isn't it
- wonderful!
-
- Which leads me to an amazing fact. Most everyone thinks of the PIC
- microcontroller line as being a recent introduction. However,
- they've been around for over 20 years. What's the difference? The
- new chips are fabricated in CMOS, some features have been added, new
- family lines have been introduced, and the company name is Microchip
- and not General Instrument. Microchip actually seems to care - they
- are aggressive and are providing a product that their customers want.
- Whatever the differences might be, these chips are really dynamite.
-
- PSST! Hey kid! Want a naked Barbie Doll?!
-
- Just a reminder to please be kind and send in your suggestions.
- Thanks.
-
-
- Take care of yourselves,
-
- Uncle Russ
-
-
- 1) ABOUT THIS FAQ
-
- 1.1) Who put this FAQ together?
-
- Me again! This FAQ is just a way to tie up loose ends. From time to
- time, general questions about microcontrollers (from beginners to
- experienced designers) pop up in the newsgroups. It seemed that a
- general primer/FAQ on microcontrollers might be useful.
-
- Much of this document could be considered as a sort of a primer on
- microcontrollers. For those of you with previous experience,
- sections 5 and 6 might be of special interest (especially for those
- of you looking for that elusive "free COBOL compiler for the 1802").
-
-
- 1.2) How can I contribute to this list?
-
- I please ask that if you have any suggestions or additions, or you
- would like to correct any of the information contained herein, please
- send me a note.
- My Email address is: sibit@datasrv.co.il
- My Smail address is:
- Russ Hersch
- HaVradim 11
- Ginot Shomron
- ISRAEL
-
- Thanks to the following who have contributed to this document:
- Robin L. Getz (National Semiconductor)
- William Chernoff
- Robert Boys
- Cecil Moore (Intel)
- Bob Coggeshall
- Richard H. Barnett (who has actually succeeded in publishing
- a book in 1995 - cute trick!)
- Dave Dunfield (Dunfield Development Systems)
- Ross Mitchell
- Jason McDonald (Program Coordinator, MW Media)
-
- Also, thanks to those who have posted questions and to those who have
- posted answers. Thanks to "my new friends" who send suggestions and
- encouragement, as well as the occasional question. Special thanks to
- my mother-in-law, who thankfully will probably never read this
- document.
-
- I hope that those of you who have special knowledge on the subject of
- microcontroller use, or know of sources of information on
- microcontrollers, will share with everyone by contributing to
- document.
-
-
- 1.3) What newsgroups will this FAQ be posted to?
-
- I will test the waters by initially posting to the following
- newsgroups:
- comp.robotics
- comp.sys.intel
- comp.sys.m68k
- comp.sys.6809
- sci.electronics
- alt.comp.hardware.homebuilt
-
- I will look forward to any suggestions about postings. I will
- probably post once a month - probably on or about the 26th of each
- month.
-
-
- 1.4) May I distribute this FAQ or post it somewhere else?
-
- I am putting no restrictions on the use of this FAQ except - It must
- be distributed in its entirety with the copyright notice, and no
- financial gain may be realized from it. After all, I have spent, and
- continue to spend, a lot of time on this.
-
- For this reason I have appended a copyright statement to the end of
- this FAQ. I feel pretty silly doing this, but I just want to protect
- myself. The copyright does not limit the use of this list for
- noncommercial purposes. I hereby give my permission to one and all
- to pass this list around and post it wherever you want - as long as
- it is not for financial gain.
-
- Thank you.
-
-
- 2) MICROCONTROLLERS
-
-
- 2.1) What is a Microcontroller?
-
- A controller is used to control (makes sense!) some process or aspect
- of the environment. A typical microcontroller application is the
- monitoring of my house. As the temperature rises, the controller
- causes the windows to open. If the temperature goes above a certain
- threshold, the air conditioner is activated. If the system detects
- my mother-in-law approaching, the doors are locked and the windows
- barred. In addition, upon detecting that my computer is turned on,
- the stereo turns on at deafening volume (for more on this, see the
- section on development tools).
-
- At one time, controllers were built exclusively from logic
- components, and were usually large, heavy boxes. Later on,
- microprocessors were used and the entire controller could fit on a
- small circuit board. This is still common - you can find many [good]
- controllers powered by one of the many common microprocessors
- (including Zilog Z80, Intel 8088, Motorola 6809, and others).
-
- As the process of miniaturization continued, all of the components
- needed for a controller were built right onto one chip. A one chip
- computer, or microcontroller was born. A microcontroller is a highly
- integrated chip which includes, on one chip, all or most of the parts
- needed for a controller. The microcontroller could be called a
- "one-chip solution". It typically includes:
- CPU (central processing unit)
- RAM (Random Access Memory)
- EPROM/PROM/ROM (Erasable Programmable Read Only Memory)
- I/O (input/output) - serial and parallel
- timers
- interrupt controller
-
- By only including the features specific to the task (control), cost
- is relatively low. A typical microcontroller has bit manipulation
- instructions, easy and direct access to I/O (input/output), and quick
- and efficient interrupt processing. Microcontrollers are a "one-chip
- solution" which drastically reduces parts count and design costs.
-
-
- 2.2) Applications
-
- In addition to control applications such as the above home monitoring
- system, microcontrollers are frequently found in embedded
- applications. Among the many uses that you can find one or more
- microcontrollers: appliances (microwave oven, refrigerators,
- television and VCRs, stereos), automobiles (engine control,
- diagnostics, climate control), environmental control (greenhouse,
- factory, home), instrumentation, aerospace, and thousands of other
- uses.
-
- Microcontrollers are used extensively in robotics. In this
- application, many specific tasks might be distributed among a large
- number of microcontrollers in one system. Communications between
- each microcontroller and a central, more powerful microcontroller (or
- microcomputer, or even large computer) would enable information to be
- processed by the central computer, or to be passed around to other
- microcrontrollers in the system.
-
- A special application that microcontrollers are well suited for is
- data logging. Stick one of these chips out in the middle of a corn
- field or up in a ballon, and monitor and record environmental
- parameters (temperature, humidity, rain, etc). Small size, low power
- consumption, and flexibility make these devices ideal for unattended
- data monitoring and recording.
-
- 2.3) Flavors
-
- Microcontrollers come in many flavors and varieties. Depending on
- the power and features that are needed, you might choose a 4 bit, 8
- bit, 16 bit, or 32 bit microcontroller. In addition, some
- specialized versions are available which include features specific
- for communications, signal processing, video processing, and other
- tasks.
-
-
- 2.4) Special microcontroller features
-
-
- CMOS - Complementary Metal Oxide Semiconductor
-
- This is the name of a common technique used to fabricate most (if
- not all) of the newer microcontrollers. CMOS requires much less
- power than older fabrication techniques, which permits battery
- operation. CMOS chips also can be fully or near fully static,
- which means that the clock can be slowed up (or even stopped)
- putting the chip in sleep mode. CMOS has a much higher immunity
- to noise (power fluctuations or spikes) than the older fabrication
- techniques.
-
-
- PMP - Post Metal Programming (National Semiconductor)
-
- PMP is a high-energy implantation process that allows
- microcontroller ROM to be programmed AFTER final metalization.
- Usually ROM is implemented in the second layer die, with nine or
- ten other layers then added on top. That means the ROM pattern
- must be specified early in the production process, and completed
- prototypes devices won't be available typically for six to eight
- weeks. With PMP, however, dies can be fully manufactured through
- metalization and electrical tests (only the passivation layers
- need to be added), and held in inventory. This means that ROM can
- be programmed late in production cycle, making prototypes
- available in only two weeks.
-
-
- OTP - One Time Programmable
-
- An OTP is a PROM (Programmable Read-Only-Memory) device. Once
- your program is written into the device with a standard EEPROM
- burner, it can not be erased or modified. This is usually used
- for limited production runs before a ROM mask is done in order to
- test code.
-
-
- Watchdog timer
-
- A watchdog timer provides a means of graceful recovery from a
- system problem. This could be a program that goes into an endless
- loop, or a hardware problem that prevents the program from
- operating correctly. If the program fails to reset the watchdog
- at some predetermined interval, a hardware reset will be
- initiated. The bug may still exist, but at least the system has a
- way to recover. This is especially useful for unattended systems.
-
-
- Analog to Digital Conversion (A/D)
-
- Converts an external analog signal (typically relative to voltage)
- and converts it to a digital representation. Microcontrollers
- that have this feature can be used for instrumention,
- environmental data logging, or any application that lives in an
- analog world.
-
-
- Comparator
-
- One or more standard comparators can sometimes be placed on a
- microcontroller die. These comparators operate much like standard
- comparators however the input and output signals are available on
- the microcontroller bus.
-
-
- Pulse width modulator
-
- Often used as a digital-to-analog conversion technique. A pulse
- train is generated and regulated with a low-pass filter to
- generate a voltage proportional to the duty cycle.
-
-
- Pulse accumulator
-
- A pulse accumulator is an event counter. Each pulse increments
- the pulse accumulator register, recording the number of times this
- event has occured.
-
-
- Input Capture
-
- Input Capture can precisely measure external frequencies or time
- intervals by copying the value from a free running timer into a
- register when an external event occurs.
-
-
- Clock Monitor
-
- A clock monitor can shut the microcontroller down (by holding the
- microcontroller in reset) if the input clock is too slow. This
- can usually be turned on or off under software control.
-
-
- Brownout Protection
-
- Brownout protection is usually an on-board protection circuit that
- resets the device when the operating voltage (Vcc) is lower than
- the Brownout voltage. The device is held in reset and will remain
- in reset when Vcc stays below the Brownout voltage. The device
- will resume execution (from reset) after Vcc has risen above the
- Brown Out Voltage.
-
-
- UART
-
- A UART (Universal Asynchronous Receiver Transmitter) is a serial
- port adapter for asynchronous serial communications.
-
-
- USART
-
- A USART (Universal Synchronous/Asynchronous Receiver Transmitter)
- is a serial port adapter for either asynchronous or synchronous
- serial communications.
-
-
- Synchronous serial port
-
- A synchronous serial port doesn't require start/stop bits and can
- operate at much higher clock rates than an asynchronous serial
- port. Used to communicate with high speed devices such as memory
- servers, display drivers, additional A/D ports, etc. Can also be
- used to implement a simple microcontroller network.
-
-
- SPI (Motorola)
-
- An SPI (serial peripheral interface) is a synchronous serial port.
-
-
- SCI
-
- An SCI (serial communications interface) is an enhanced UART
- (asynchronous serial port).
-
-
- I2C bus - Inter-Integrated Circuit bus (Intel)
-
- The I2C but is a two line, multi-master, multi-slave network
- interface with collision detection. Several peripherals also
- exist that support the I2C bus. Each node (microcontroller or
- peripheral) may initiate a message, and then transmit or receive
- data. The two lines of the network consist of the serial data
- line and the serial clock line. Each node on the network has a
- unique address which accompanies any message passed between nodes.
- Since only 2 wires are needed, it is easy to interconnect a number
- of devices.
-
-
- MICROWIRE/PLUS (National Semiconductor)
-
- MICROWIRE/PLUS is a serial synchronous bi-directional
- communications interface. This is used on National Semiconductor
- Corporation's devices (microcontrollers, A/D converters, display
- drivers, EEPROMS, etc.).
-
-
- Software protection
-
- Either by encryption or fuse protection, the programmed software
- is protected against unauthorized snooping (reverse engineering,
- modifications, piracy, etc.).
-
-
- Idle/Halt/Wakeup
-
- The device can be placed into IDLE/HALT mode by software control.
- In both Halt and Idle conditions the state of the microcontroller
- remains. RAM is not cleared and any outputs are not changed. The
- terms idle and halt often have different definitions, depending on
- the manufacturer. What some call idle, others may call halt, and
- vice versa. It can be confusing, so check the data sheet for the
- device in question to be sure.
-
- In IDLE mode, all activities are stopped except:
- - associated on-board oscillator circuitry
- - watchdog logic (if any)
- - the clock monitor
- - the idle timer (a free running timer)
- Power supply requirements on the microcontroller in this mode are
- typically around 30% of normal power requirements of the
- microprocessor. Idle mode is exited by a reset, or some other
- stimulus (such as timer interrupt, serial port, etc.). A special
- timer/counter (the idle timer) causes the chip to wake up at a
- regular interval to check if things are OK. The chip then goes
- back to sleep.
-
- IDLE mode is extremely useful for remote, unattended data logging
- - the microprocessor wakes up at regular intervals, takes its
- measurements, logs the data, and then goes back to sleep.
-
- In Halt mode, all activities are stopped (including timers and
- counters). The only way to wake up is by a reset or device
- interrupt (such as an I/O port). The power requirements of the
- device are minimal and the applied voltage (Vcc) can sometimes be
- decreased below operating voltage without altering the state
- (RAM/Outputs) of the device. Current consumption is typically
- less than 1 uA.
-
- A common application of HALT mode is in laptop keyboards. In
- order to have maximum power saving, the controller is in halt
- until it detects a keystroke (via a device interrupt). It then
- wakes up, decodes and sends the keystroke to the host, and then
- goes back into halt mode, waiting either for another keystroke, or
- information from the host.
-
-
- Resident program loader
-
- Loads a program by Initializing program/data memory from either a
- serial or parallel port. Convenient for prototyping or trying out
- new features, eliminates the erase/burn/program cycle typical with
- EPROMs, and allows convenient updating of a system even from an
- offsite location.
-
-
- Monitor
-
- A monitor is a program installed in the microcontroller which
- provides basic development and debug capabilities. Typical
- capabilities of a microcontroller monitor include: loading object
- files into system RAM, executing programs, examining and modifying
- memory and registers, code disassembly, setting breakpoints, and
- single-stepping through code. Some simple monitors only allow
- basic functions such as memory inspection, and the more
- sophisticated monitors are capable of a full range of debug
- functions.
-
- Monitors can either communicate with a dumb terminal or with a
- host computer such as a PC. Much of the work of the monitor (such
- as user interface) can be offloaded to the host PC running a
- program designed to work with the monitor. This makes it possible
- to reduce the size and complexity of the code that must be
- installed in the target system.
-
-
- MIL transducer
-
- An MIL transducer is a sophisticated and expensive device that
- detects the presence of your mother-in-law. Sensitivity settings
- are possible for a full range of stimuli such as: snarling,
- stomping, nasty faces, and others. Techno-Wimp (address withheld
- upon request), the sole manufacturer of the MIL transducer, has
- recently announced a major new version which is sensitive enough
- to detect less-tangible stimuli. This breakthrough product is
- dubbed the MIL-WOMF ("Whoa, outta my face!") transducer. Both the
- original MIL and the new MIL-WOMF transducers are programmable and
- easy to interface to most microcontrollers.
-
-
- 2.5) Some popular microcontrollers
-
- Some common microcontrollers are described below. A common question
- is "what microcontroller should I use for...?" Well, that's a tough
- one. The best advice would be to choose a chip that has a full set
- of development tools at the price you can afford, and good
- documentation. For the hobbyist, the Intel 8051, Motorola 68hc11, or
- Microchip PIC would all make suitable choices.
-
-
- 8048 (Intel)
-
- The grandaddy of 'em all, the first microcontroller, it all
- started here! Although a bit long in the tooth and a bit kludgey
- in design (at least by today's standards), it is still very
- popular due to its very low cost, availability, and wide range of
- development tools.
-
- Split memory architecture with program ROM on chip with an
- additional 64 to 256 bytes also on chip. I/O is mapped in its own
- space.
-
-
- 8051 (Intel and others)
-
- The 8051, Intel's second generation of microcontrollers, rules the
- microcontroller market at the present time. Although featuring a
- somewhat bizarre design, it is a very powerful and easy to program
- chip (once you get used to it).
-
- Split memory architecture with separate address spaces for program
- memory and data memory. The program memory can be up to 64K. The
- lower portion (4K or 8K depending on type) may reside on chip.
- The 8051 can address up to 64K of external data memory, and is
- accessed only by indirect addressing. The 8051 has 128 bytes (256
- bytes for the 8052) of on-chip RAM, plus a number of special
- function registers (SFRs). I/O is mapped in its own space.
-
- The 8051 features the so-called "boolean processor". This refers
- to the way instructions can single out bits just about anywhere
- (RAM, accumulators, I/O registers, etc.), perform complex bit
- tests and comparisons, and then execute relative jumps based on
- the results.
-
- Piles of software, both commercial and free, are available for the
- 8051 line. Many manufacturers supply what must be a hundred
- different variants of this chip for any requirement. Often
- featured in construction projects in the popular hobbyist
- magazines.
-
-
- 80186,80188 (Intel)
-
- These chips are, in essence, microcontroller versions of the 8086
- and 8088 (of IBM/PC fame). Included on the chip are: 2 channels
- of DMA, 2 counter/timers, programmable interrupt controller, and
- dynamic RAM refresh. There are several variations including: low
- power versions, variations with serial ports, and so on.
-
- One major advantage you gain by using one of these
- microcontrollers is that you can use standard PC development tools
- (compilers, assemblers, etc) for developing you applications. If
- you are already familiar with PC software development, the
- learning curve will be short, since these chips have the same
- basic architecture as the original 8088 (as used in the IBM/PC).
-
- Other advantages include high speed processing, a full megabyte
- addressing space, and powerful interrupt processing.
-
-
- 80386 EX (Intel)
-
- The 80386 EX is of course a 386 in microcontroller clothing.
- Included on the chip are: serial I/O, power management, DMA,
- counter/timers, programmable interrupt controller, and dynamic RAM
- refresh. And of course, all of the power of the 386
- microprocessor.
-
- One major advantage you gain by using one of these
- microcontrollers is that you can use standard PC development tools
- (compilers, assemblers, etc) for developing you applications. If
- you are already familiar with PC software development, the
- learning curve will be short, since these chips have the same
- basic architecture as the original 8088 (as used in the IBM/PC).
-
- We're talking power here gang.
-
-
- 8096
-
- The third generation of Intel microprocessors, the 8096 is a 16
- bit processor. Among the many features it includes are: hardware
- multiply and divide, 6 addressing modes, high speed I/O, A/D,
- serial communications channel, up to 40 I/O ports, 8 source
- priority interrupt controller, PWM generator, and watchdog timer.
-
-
- 6805 (Motorola)
-
- The 6805 is based loosely on the manufacturer's earlier 6800, with
- some similarities to the 6502. It has a common memory
- architecture in which instructions, data, I/O, and timers all
- share the same space. Stack pointer is 5 bits wide which limits
- the stack to 32 bytes deep. Some members of this family include
- on chip A/D, PLL frequency synthesizer, serial I/O, and software
- security.
-
-
- 68hc11 (Motorola and others)
-
- The popular 68hc11 is a powerful 8-bit data, 16-bit address
- microcontroller from Motorola (the sole supplier) with an
- instruction set that is similar to the older 68xx parts (6801,
- 6805, 6809). The 68hc11 has a common memory architecture in which
- instructions, data, I/O, and timers all share the same memory
- space.
-
- Depending on the variety, the 68hc11 has built-in EEPROM/OTPROM,
- RAM, digital I/O, timers, A/D converter, PWM generator, pulse
- accumulator, and synchronous and ansynchronous communications
- channels. Typical current draw is less than 20ma.
-
-
- 683xx (Motorola)
-
- The MC68EC300 series incorporates various peripherals into various
- 68k family core processors. These can be called "integrated
- processors". They are really super-microcontrollers, very high
- performance, capable of high processing speeds, and able to
- address large amounts of memory. A typical example from this line
- would be the 68331. It is based on a 68020-like core and has
- about the same processing power as an Intel 80386.
-
-
- PIC (MicroChip)
-
- The PIC line of microcontrollers has been popular for over 20
- years. Microchip (which was originally [owned by] General
- Instruments), seems to have recreated this microcontroller into a
- product universally regarded as a powerful and cost effective
- solution. The PIC microcontrollers were the first RISC
- microcontrollers, and maybe still the only ones.
-
- RISC generally implies that simplicity of design allows more
- features to be added at lower cost, and the PIC line is no
- exception. Although having few instructions (eg. 33 instructions
- for the 16C5X line versus over 90 for the Intel 8048), the PIC
- line has a wealth of features included as part of the chip.
- Separate buses for instructions and data (Harvard architecture)
- allows simultaneous access of program and data, and overlapping of
- some operations for increased processing performance. The
- benefits of design simplicity are a very small chip, small pin
- count, and very low power consumption.
-
- PIC microcontrollers are rapidly gaining in popularity. They are
- being featured more and more often in construction projects in
- popular hobbyist magazines, and are chalking up a good number of
- design wins. Due to their low cost, small size, and low power
- consumption, these microcontrollers can now be used in areas that
- previously wouldn't have been appropriate (such as logic
- circuits). They are currently available in three lines: the
- PIC16C5x, PIC16Cxx, and PIC17Cxx families.
-
-
- COP800 Family (National Semiconductor)
-
- The COP800 Basic Family is a fully static 8-bit microcontroller,
- fabricated using double metal silicon gate microCMOS technology.
- This low cost microcontroller contains all system timing,
- interrupt logic, ROM, RAM, and I/O necessary to implement
- dedicated control functions in a variety of applications.
-
- Depending on the device, features include: 8-bit memory mapped
- architect, MICROWIRE serial I/O, UART, memory mapped I/O, many 16
- bit timer/counters with capture registers, a multi-sourced
- vectored interrupt, comparator, WATCHDOG Timer and Clock monitor,
- Modulator/Timer (high speed PWM timer for IR transmission),
- 8-channel A/D converter with prescaler and both differential and
- single-ended modes, brownout protection, halt mode, idle mode,
- high current I/O pins with 15mA sink capability, Schmitt trigger
- inputs and Multi-Input-Wake-Up. Most devices operate over a
- voltage range from 2.5V to 6V.
-
- High throughput is achieved with an efficient, powerful
- instruction set operating at a 1uS per instruction rate (most
- instructions are single byte/single cycle) including true bit
- manipulation and BCD arithmetic instructions. Most devices have
- military versions for -55C to +125C.
-
-
- Z8 (Zilog)
-
- A "loose" derivative of the Zilog Z80, the Z8 is actually a
- composite of several different achitectures. Not really
- compatible with the Z80 peripherals. Has a unique architecture
- with three memory spaces: program memory, data memory, and a CPU
- register file. On-chip features include UART, timers, DMA, up to
- 40 I/O lines. Some versions include a synchronous/asynchronous
- serial channel. Features fast interrupt response with 37
- interrupt sources. The Z8671 has Tiny Basic in ROM. The Super-8
- is just that, a super version of the Z8 with more of everything.
-
-
- HD64180 (Hitachi)
-
- A powerful microcontroller with full Z80 functionality plus:
- extended memory management, two DMA channels, synchronous and
- asynchronous communications channels, timers, and interrupt
- controller. Some versions of this chip also include EPROM, RAM,
- and PIO (programmable input/output). It runs Z80 code in fewer
- clock cycles than the Z80 and adds in hardware multiply and a few
- other instructions. Available in versions that run up to 18MHz.
-
-
- TMS370 (Texas Instruments)
-
- It is similar to the 8051 in having 256 registers, A and B
- accumulators, stack in this register page, etc. It also has a
- host of onboard support devices, some members have all of them
- while others have a subset, the peripherals include: RAM, ROM
- (mask, OTP, or EEPROM), 2 timers (configurable as timers/
- counters/comparators/PWM output), watchdog timer, SCI (syncronous
- serial port), SPI (asynchronous serial port), A/D (8 bit, 8
- channel), interupts.
-
- Instruction set is mostly 8 bit with some 16 bit support. Has
- several addressing modes, 8x8 multiply, 16/8 divide. Clock speeds
- are up to 20MHz which gives 5MHz for buss access and instruction
- cycles. Pins mostly TTL compatible (except clock and reset).
-
- Packages include:
- 28,40 DIP
- 28 CLCC
- 28,44,68 PLCC
- 40,64 SDIP
-
- A developers/proto board is available. It is a multi layer PCB
- about 12"x7" with RS-232 serial I/O, and monitor as well as access
- to all processor pins on a patch and proto area. Support software
- includes IBM-PC monitor & loader, cross assembler (absolute only).
- A pure serial TTY monitor is also supported. Sole power
- requirement is +5v. Priced is about $500 or so.
-
- A relocating assembler and linker, and a C compiler are also
- available.
-
-
- 1802 (RCA)
-
- This is a real old-timer. The 1802 is the successor to the 1801
- (2 chip set) which was the first microprocessor implemented in
- CMOS. Both products were called microprocessors by RCA, not
- microcontrollers. However, since the 1801 was implemented in CMOS
- and therefore had low power requirements, it was often used in
- microcontroller applications. The 1802, with its higher level of
- integration and ease of use, could actually be considered a true
- microcontroller. The 1802 has separate data and I/O address
- spaces.
-
-
- 3) MICROCONTROLLER PROGRAMMING LANGUAGES
-
- Just a bit of an introduction for the beginner.
-
- 3.1) Machine/Assembly language
-
- Machine language is the program representation as the microcontroller
- understands it. It is not easy for humans to read and is a common
- cause of migraine headaches. Assembly language is a human-readable
- form of machine language which makes it much easier for us flesh and
- bone types to deal with. Each assembly language statement
- corresponds to one machine language statement (not counting macros).
-
- An assembly/machine language program is fast and small. This is
- because you are in complete charge of what goes into the program. Of
- course, if you write a slow, large, stupid program, then it will run
- slowly, be too big, and be stupid. Assembly language (assembler)
- can't correct stupidity - although sometimes I wish it could ;-).
-
- If you are starting out learning about microcontrollers, it would be
- worth your while first learning assembler. By programming in
- assembler, you master the underlying architecture of the chip, which
- is important if you intend to do anything significant with your
- microcontroller.
-
-
- 3.2) Interpreters
-
- An interpreter is a high level language that is closer to natural
- language. The interpreter itself is a program that sits resident in
- the microcontroller. It executes a program by reading each language
- statement one at a time and then doing what the statement says to do.
- The two most popular interpreters for microcontrollers are BASIC and
- FORTH.
-
- BASIC's popularity is due to its simplicity, readability, and of
- course just about everyone has at least played with BASIC at one time
- or another. One common compaint about [interpreted] BASIC is that it
- is slow. Often this can be solved by using a different technique for
- performing the desired task. Other times it is just the price paid
- for using an interpreter.
-
- FORTH has a very loyal following due to its speed (approaching that
- of assembler language) and its incremental approach to building a
- system from reusable parts. Many FORTH systems come with a host
- system which turns your desktop computer into a development system.
- FORTH can be quite difficult to write in (if you have no experience
- with it) and is probably even harder to read. However, it is a very
- useful and productive language for control systems and robotics and
- can be mastered in time.
-
- The nicest thing about developing a system with an interpreter is
- that you can build your program interactively. You first write a
- small piece of code and then you can try it out immediately to see
- how it works. When the results are satisfactory, you can then add
- additional components until the final product is achieved.
-
-
- 3.3) Compilers
-
- A compiler is a high level language that combines the programming
- ease of an interpreter with greater speed. This is accomplished by
- translating the program (on a host machine such as a desktop PC)
- directly into machine language. The machine language program is then
- burned onto an EPROM or downloaded directly to the microcontroller.
- The microcontroller then executes the translated program directly,
- without having to interpret first.
-
- The most popular microcontroller compilers are C and BASIC. PL/M,
- from Intel, also has some popular support due to that company's
- extensive use of that language.
-
- Due to both its popularity and its slow speed, it was only logical
- that BASIC would appear as a compiled language. A few companies
- supply a BASIC compiler for several of the more popular
- microcontrollers. Execution speed is drastically increased over
- interpreted BASIC since the microcontroller is freed from the task of
- interpreting the statements as the program runs.
-
- C is now the language of choice for the entire universe. C is used
- on computers from the tiny microcontroller up to the largest Cray
- supercomputer. Although a C program can be a bit tedious at times to
- read (due to the terse programming style followed by many C
- programmers), it is a powerful and flexible development tool.
- Although a high level language, it also gives the developer access to
- the underlying machine. There are several very good and cheap C
- compilers available for the more popular microcontrollers. It is
- widely used, available, supported, and produces fairly efficient code
- (fast and compact).
-
-
- 4) DEVELOPMENT TOOLS
-
- Having a programming language is usually not enough to develop a
- program for a microcontroller. Some way of debugging your program is
- needed. I am only too painfully aware of this fact.
-
-
- 4.1) Simulators
-
- A simulator runs your microcontroller program on a host machine (such
- as your PC). You can step through the code to see exactly what is
- happening as the program runs. Contents of registers or variables
- can be altered to change the way the program runs. Eliminates (or at
- least delays) the erase/burn/program EPROM cycle common in
- microcontroller program development. You can work out ideas or learn
- about microcontrollers by experimenting with small code fragments and
- watching on the screen what happens. A simulator can't support real
- interrupts or devices, and usually runs much slower than the real
- device the program is intended for.
-
-
- 4.2) Resident Debuggers
-
- A resident debugger runs your program on the microcontroller itself,
- while showing the progress on your host machine (such as a PC). Has
- many of the same advantages as simulator above, with the additional
- benefit of seeing how the program runs on the real target machine. A
- resident debugger needs to "steal" some resources from the target
- machine, including: a communications port to communicate with the
- host, an interrupt to handle single stepping, and a certain amount of
- memory for the resident part (on the target) of the debugger.
-
-
- 4.3) Emulators
-
- If you've got the money, this is the equipment you want to develop
- your system with (yeah, that's right, a preposition at the end of a
- sentence!). A [usually] expensive piece of hardware that even for
- the cheaper versions will run you at least $700. An emulator is a
- sophisticated device that pretends that it is the microprocessor
- itself, while at the same time capturing information. It provides
- full and total control over your target, while at the same time not
- requiring any resources from the target. The emulator can either be
- a stand alone device with its own display, or it can be interface to
- a PC.
-
- 4.4) Good Stereo System
-
- This is the most important tool for the microcontroller developer, or
- for any computer system developer for that matter. Don't expect to
- get anywhere unless you have the proper music playing in the
- background(?) at the proper volume. I find that I do my best work
- with the Rolling Stones (especially Goats Head Soup) or Clapton
- (especially early stuff like Cream - Disraeli Gears is a killer
- album!). The volume must be set to cause excrutiating pain to be
- most effective. Trust me on this ;-).
-
-
- 5) FINDING OUT MORE ABOUT MICROCONTROLLERS
-
- If you are interested in learning more about microcontrollers, there
- are many fine sources of information. You have your choice of
- printed media (books, periodicals, informative graffiti) or
- interactive (right here on the Internet, or BBSs).
-
-
- 5.1) Books
-
- The 16 bit 8096: Programming, Interfacing, Applications
- - Ron Katz and Howard Boyet
- - Microprocessor Training Inc
- 14 East 8th Street, New York, NY 10003
- 212-473-4947
- - Library of Congress Catalog card number: 85-61954
- - According to William Chernoff: "The book is pretty good -
- mostly software examples. The one hardware thing I looked
- closely at was wrong - a schematic error. Oh well."
-
- The 68hc11 Microcontroller
- - Joseph D. Greenfield (at R.I.T.)
- - Saunders College Publishing, (Harcourt Brace Jovanovich)
- - 1992
- - ISBN 0-03-051588-2
- - A number of the sections make use of the Buffalo monitor.
- This could be useful if you are using the Motorola Trainer EVB.
-
- The 8051 Family of Microcontrollers
- -Richard H. Barnett
- -Prentice-Hall, 1995 (yeah, that's right, 1995!)
- -ISBN 0-02-306281-9
-
- 8051 Interfacing and Applications
- - Applied Logic Engineering
- 13008 93rd Place North, Maple Grove, MN 55369
- - (612)494-3704
-
- 8051 Product Directory
- - MW Media
- - Fairmont Plaza, 50 W. San Fernando, #675, San Jose, CA 95113
- - (408)286-4200
- - FAX: (408)288-4728
-
- The 8051 Microcontroller
- - I. Scott MacKenzie
- - Macmillan Publishing Company, 1992
-
- The 8051 Microcontroller
- - James W. Stewart
- - Prentice Hall, 1993
-
- The 8051 Microcontroller: Architecture, Programming and Applications
- - Kenneth J. Ayala
- - 241 pages, soft cover
- - 5.25" diskette with assembler and simulator
- - ISBN 0-314-77278-2, Dewey 004.165-dc20
- - West Publishing Company
- P.O. Box 64526, St. Paul, MN 55164
- (800)328-9352
- - see review in next section
-
- Assembly Language Programming (for the MCS-51 family)
- - F. A. Lyn
- - L. S. Electronic Systems Design
-
- Basic-52 Programmer's Guide
- - Systronix, Inc. (they also sell a Basic compiler)
- - address above
-
- Beginner's Guide
- - Suncoast Technologies
-
- A Beginners Guide to the Microchip PIC
- - Nigel Gardner
- - Character Press, Ltd. (UK)
- - ISBN 1 899013 00 8
- - software (on floppy) and hardware guide, debugging techniques
- - Available from Polar Electronics in UK for 19.95 UK Pounds
-
- C and the 8051
- - Thomas W. Schultz
- - Prentice Hall
- - ISBN 0-13-753815-4
-
- Data Acquisition and Process Control with the M68HC11 Microcontroller
- - Frederick Driscoll, Robert Coughlin, Robert Villanucci of
- Wentworth Institute of Technology.
- - Macmillan Publishing Company
- - 1994
- - ISBN 0-02-33055-X
- - Several Chapters on the 68HC11, instructions, and EVB;
- chapters on interfacing Analog and Digital signals to the
- 68HC11; example applications of interfaces to temperature,
- load cell, pressure and thermocouple sensors.
- - a good companion to Motorola's "pink" books
-
- Data book / Handbook / Users' Guide
- - Advanced Micro Devices
- - Dallas (User's guide for the DS5000)
- - Intel
- - Siemens
-
- Design with Microcontrollers
- - John B. Peatman
- - ISBN 0-07-049238-7
- - This book is on a more advanced level. Uses both the 68hc11
- and Intel 8096 as example systems.
- - Used for a very popular course on microcontroller design at
- Georgia Tech.
-
- Embedded Controller Forth for the 8051 Family
- - Academic Press
- - William H. Payne
- - uses a Forth development system available on the Internet
-
- Embedded Controllers Databook 1992 Edition
- - National Semiconductor Corporation
- - literature number: 400049
- - (800)272-9959 call this number for for copies
-
- Embedded Systems Programming in C and Assembler
- - John Forrest Brown
- - Van Nostrand Reinhold, 1994
- - 304 pages, $49.95
- - ISBN 0-442-01817-7
- - covers Motorola and Intel processors
- - includes diskette with code from the book
- - book review in Dr. Dobb's Journal, November 1994, page 121
-
- Experimenter's guide
- - Rigel Corporation
-
- Intel Development Tools Handbook, 2nd Edition
- (Support Solutions for Intel's Embedded Microprocessor)
- - MW Media
- - Fairmont Plaza, 50 W. San Fernando, #675, San Jose, CA 95113
- - (408)286-4200
- - FAX: (408)288-4728
- - Survey of commercial development tools for the 8051, 8096,
- and 80186 lines of Intel microprocessors. This document could
- very well be a "must" if you're into serious development using
- one of these chips. If you are "just" a hobbyist, see how the
- "other half" lives.
-
- Introduction to Microcontroller Design, Based on the 8051 family of
- Processors
- - Business Data Computers
- P.O. Box 1549, Chester, CA 96020
-
- M68hc11 Reference Manual
- - Motorola - literature reference M68HC11RM/AD
- - This document is the "bible" of the 6811 and is a must-have
- for any serious 6811 programmer.
-
- MC68hc811E2 Programming Reference Guide
- - Motorola - literature reference M68HC811E2RG
- - A pocket-sized guide to the version of the 6811 used on the
- Mini Board
-
- Microcomputer Engineering
- - Gene H. Miller
- - Prentice Hall, Englewood Cliffs, NJ 07632
- - 1993
- - ISBN 0-13-584475-4
- - Explains the basics. Many clear and concise assembly language
- example programs.
- - Written to be used with the Motorola Trainer (EVB).
-
- Microcontroller Technology, The 68hc11
- - Peter Spasov
- - Prentice Hall
- - ISBN 0-13-583568-2
-
- Microcontrollers: Architecture, Implementation, and Programming
- - Kenneth Hintz and Daniel Tabak
- - McGraw-Hill Inc. 1992
- - ISBN 0-07-028977-8
-
- MW Media - Product Directories
- - Motorola Microcontroller Tools Directory
- ('94 edition out in 3 weeks)
- - Motorola 68K Source ('94 edition available now)
- - Intel Development Tools Handbook ('95 edition just beginning)
- (survey of commercial development tools for the 8051, 8096,
- and 80186 lines of Intel microprocessors)
- - Embedded Intel 386 Directory (released in Aug '94)
- - Intel 486/Pentium directory (forthcoming in '95)
- - 8051 Product Directory ('94 edition out in 4 weeks)
- (survey of various 8051 products)
- - Hitachi Microcontroller Development Tools Directory
- (out in '95)
- - AMD FusionE86 Directory (out in '95)
- (186,386,486)
- - AMD 29K Directory (pending in '95)
- - Low Power Product Directory (out in '95)
- (3.3. volts and lower)
- - DSP Directory (released in May '94)
- - Multimedia CD (hopefully out in '95)
- - These documents could very well be a "must" if you're into
- serious development using any of these chips. If you are
- "just" a hobbyist, see how the "other half" lives.
- - FREE to qualified developers
- - MW Media
- - Fairmont Plaza, 50 W. San Fernando, #675, San Jose, CA 95113
- - (408)288-4721 and (408)286-4200
- - FAX: (408)288-4728
- - Email: jasonm@violet.berkeley.edu
- (Jason McDonald, program director)
-
- Programmer's Guide to the 1802
- - Tom Swan
- - Hayden Book Company, Inc., 1981
- - ISBN 0-8104-5183-2
- - good introduction to assembly language progamming and an
- thorough tutorial on the 1802
-
- Programming Microcontrollers in C
- - Ted Van Sickle
- - HighText Publications, 1994
- - 394 pages, $29.95
- - ISBN 1-878707-14-0
- - thorough tutorial on C programming, covers aspects of C
- programming specific to embedded systems
- - covers the Motorola line of microcontrollers (small to large)
- - book review in Dr. Dobb's Journal, November 1994, page 121
-
- Single- and Multiple-Chip Microcomputer Interfacing
- - G.J. Lipovski
- - Copyright 1988
- - 478 pages
- - ISBN 0-13-810557-X (Prentice-Hall Edition)
- ISBN 0-13-810573-1 (Motorola Edition)
- - Based around the 68HC11 it covers both hardware and
- software at undergraduate level, but the emphasis is on
- interfacing.
- - Chapter titles:
- 1 Microcomputer Architecture
- 2 Programming Microprocessors
- 3 Bus Hardware and Signals
- 4 Parallel and Serial I/O
- 5 Interrupts and Alternatives
- 6 Analog Interfacing
- 7 Counters and Timers
- 8 Communications Systems
- 9 Storage and Display Systems
-
- Single- and Multiple- Chip Microcomputer Interfacing (Lab Manual)
- - Peter Song and G. Jack Lipovski
- - Prentice-Hall, 1988
- - ISBN 0-13-811605-9
- - Support for the above book. Examples based around the Motorola
- EVB and the BUFFALO monitor or the EVBU (or 3-chip micro) and
- PC-Bug11.
-
- User Manual for the CDP1802 COSMAC Microprocessor
- - RCA, 1977
- - contains useful hardware and software techniques
-
-
- 5.2) Periodicals
-
- Various magazines and journals (journals seems to be THE popular name
- for magazines these days) provide articles from time to time on
- microcontrollers. If you are just starting out learning, pick those
- magazines that feature construction articles.
-
- The Computer Applications Journal (Circuit Cellar Ink)
- - programming and construction articles
- - POB 7694, Riverton, NJ 08077-8784
- - Fax: (203)872-2204
- - Voice orders: (609) 786-0409
- - On-line orders (BBS): (203) 871-1988
- - Email orders: ken.davidson@circellar.com
- - $21.95, $31.95 surface Canada and Mexico,
- $49.95 air all other countries
-
- Computer Design
- - industry announcements and trends
- - One Technology Park Drive, P.O. Box 990, Westford, MA 01886
- - (508)692-0700
-
- The Computer Journal
- - programming and construction articles
- - PO Box 535, Lincoln 96648
-
- Dr. Dobbs Journal
- - programming articles, concepts, and designs
- - 411 Borel Ave., San Mateo, CA 94402
- - (415)358-9500
-
- Electronic Engineering Times
- - industry announcements and trends
- - 500-B Bi-County Boulevard, Farmingdale, NY 11735
- - (516)293-3000
-
- Electronics Now
- - construction articles
- - Box 55115, Boulder, CO 80321-5115
- - $19.97 one year
-
- Elektor Electronics
- - programming and construction articles
- - World Wide Subscription Service Ltd
- Unit 4, Gibbs Reed Farm, Pashley Road
- Ticehurst TN5 7HE, England
- - 27 UK pounds
- or
- - Old Colony Sound Lab, P.O. Box 243, Peterborough, NH 03458
- - Tel. (603) 924-6371, 924-6526
- - Fax: (603) 924-9467
- - $57 USA and Canada per year
-
- Embedded Systems Programming
- - programming and systems design articles
- - Miller Freeman Publications
- - 500 Howard St., San Francisco, CA 94105
- - (415) 397-1881
-
- Inquisitor Magazine
- - If you're the type that watched Gilligan's Island for its
- socio-political insights, then you'll love a new 'zine that
- just crossed my desk - Inquisitor Magazine. It's general
- philosophy seems to be ... well, it seems to be ... uh, yeah!
- Technical in nature, bizarre, tongue in cheek, eclectic,
- electric, did I mention bizarre(?), and lots of fun. Worth
- looking at if you like the out of the ordinary. The moving
- force behind this magazine is Daniel Drennan, who seems to have
- suffered from an overdose of radiation from his computer
- monitor ;-).
- - Planetarium Station, P.O.Box 132
- New York, NY 10024-0132
- - (212)595-8370
- - Email: inquisitor@echonyc.com
- - $16 per year (4 issues)
-
- M icrocomputer Journal (formerly Computer Craft)
- - programming and construction articles
- - 76 N. Broadway, Hicksville, NY 11801
- - $18.95 one year, foreign $23.00, foreign air mail $76.00
-
- M idnight Engineering
- - 1700 Washington Ave., Rocky Road, CO 81067
- - (719)254-4553
-
- N uts & Volts Magazine
- - A National Publication for the Buying and Selling of
- Electronic Equipment
- - 430 Princeland Court, Corona, CA 91719
- - Mailed third class, USA only: $17.00 one year
- $31.00 two years
- - Mailed first class, one year only: $34.00-USA
- $35.00-Canada/Mexico
- - Foreign/Air Mail - $70.00; Foreign/Surface - $39.00
- - (800)783-4624
- - Email: 74262.3664@Compuserve.com
-
-
- 5 .3) Internet newsgroups
-
- V arious newsgroups frequently have discussions or information on
- various microcontrollers. Among some of the more useful
- (especially
- t he first 3 newsgroups):
-
- c omp.robotics
- M icrocontrollers figure heavily in robotics projects. You will
- find a lot of information about the subject in this
- newsgroup. Even if you aren't building a robot, check this
- newsgroup out. Lots of 68hc11 activity, too.
-
- s ci.electronics
- a lt.comp.hardware.homebuilt
- T wo good places to find [mostly technical] discussions on
- microcontroller use and implementation. Most of the
- participants are crazy about "rolling their own", and they
- are eager to share their knowledge.
-
- c omp.realtime
- O ccasional discussions about real-time use of microcontollers.
-
- c omp.sys.m68k
- T he full line of Motorola 68000 microprocessors is discussed in
- this newsgroup, including the very powerful and advanced
- microcontrollers based on this family.
-
- c omp.sys.6809
- T his newsgroup covers an old-time favorite, the 6809
- microprocessor, which is commonly used for control
- applications. Motorola 8 bit microprocessors and
- microcontrollers (6805, 6811, etc.) are also discussed in
- this newsgroup.
-
- c omp.sys.intel
- M ostly trends and development are discussed in this newsgroup.
- From time to time you will find a discussion on some obtuse
- technical problem or feature.
-
- c omp.lang.misc
- S ometimes questions or discussions on different microcontroller
- topics pop up here. I guess it's the ".misc" that attracts
- these questions.
-
-
- 5 .4) Internet sources of information on specific microcontrollers
-
- I f you are interested in finding sources of information on a specific
- microcontroller, check out the really fine FAQs ;-) that have
- been compiled for the more popular microcontrollers.
-
- Subject: PIC microcontrollers
- Newsgroups: sci.electronics
- Maintainer: Tom Kellett
- Tom@takdsign.demon.co.uk
-
- Subject: 8051 microcontrollers
- Newsgroups: comp.sys.intel
- comp.realtime
- comp.robotics
- comp.lang.forth
- sci.electronics
- Archive: rtfm.mit.edu : <plus all mirror sites>
- /pub/usenet/comp.answers/microcontroller-faq/8051
- /pub/usenet/sci.answers/microcontroller-faq/8051
- /pub/usenet/news.answers/microcontroller-faq/8051
- Maintainer: Russ Hersch
- Email: sibit@datasrv.co.il
-
- Subject: 68hc11 microcontrollers
- Newsgroups: comp.realtime
- comp.robotics
- sci.electronics
- Archive: rtfm.mit.edu : <plus all mirror sites>
- /pub/usenet/comp.answers/microcontroller-faq/68hc11
- /pub/usenet/sci.answers/microcontroller-faq/68hc11
- /pub/usenet/news.answers/microcontroller-faq/68hc11
- Maintainer: Russ Hersch
- Email: sibit@datasrv.co.il
-
- Subject: Motorola 68K microprocessor line
- Newsgroups: comp.sys.m68k
- Archive: bode.ee.ualberta.ca : pub/motorola/general
- ftp.luth.se : /pub/misc/motorola/faq
- file name of archive is m68kfaq?.zip (? is version)
- Maintainer: Robert Boys
- Ontario, Canada
- Email: r.boys@genie.geis.com
- or
- fboys@uoguelph.ca
-
-
- S everal other FAQs have been compiled that address various aspects of
- microcontroller design and implementation.
-
- Subject: Robotics
- Newsgroups: comp.robotics
- Maintainer: Kevin Dowling
- (412)268-8830
- Email: nivek@ri.cmu.edu
- Smail: Carnegie Mellon University
- The Robotics Institute
- Pittsburgh, PA 15213
-
- Subject: Electronics
- Newsgroups: sci.electronics
- Maintainer: Filip Gieszczykiewicz
- Email: filip@smi.med.pitt.edu
-
- Subject: Real-time
- Newsgroups: comp.realtime, comp.answers, news.answers
- Archive: rtfm.mit.edu : pub/usenet/comp.realtime
- Maintainer: Mark Linimon
- Lonesome Dove Computing Services
- Roanoke, Virginia
- Email: linimon@nominil.lonesome.com.
-
-
- 6 ) MICROCONTROLLER FREE SOFTWARE SOURCES
-
-
- T his section includes descriptions and references to free
- microcontroller software. FTP sites and BBSs contain many
- quality packages and code samples for free. For heavy duty
- use, you might prefer the many commercial packages that are
- available. With the public domain (or free) stuff, you're
- usually on your own. The commercial packages usually provide
- extensive documentation and support.
-
- I f you are looking for commercial software for the 8051, 68hc11, or
- PIC, then check out the FAQs on these microcontrollers for
- details on what is available.
-
- F or the hobbyist, or professional on a budget, who would like to buy
- a reasonably priced and well supported development package,
- check out Dunfield Development. For only $100.00 you get a
- near ANSI C compiler, assembler, monitor/debugger, and much
- more. The following chips are supported: 6809, 68hc11,
- 68hc16, 8051/52, 8080/85, 8086, and 8096.
- Dunfield Development Systems
- P.O. Box 31044
- Nepean, Ontario K2B 8S8
- Canada
- (613)256-5820
- Fax: (613)256-5821
- Email: ddunfield@bix.com
-
- I f you're just looking for a plain C compiler without the frills,
- ImageCraft has just released version 1 of their compiler for
- the 68hc11. The price is just $40 for a near ANSI C compiler.
- Initial feedback on this compiler seem promising. The
- pre-release versions are already in use by many of you, and
- will still be available as freeware.
- ImageCraft
- P.O. Box 64226
- Sunnyvale, CA 94086-9991
- (Richard Man) imagecft@netcom.com
-
-
- 6 .1) FTP sites
-
-
- T he following is a list of the anonymous ftp sites that have source
- code and programming languages for various microcontrollers.
- There are many others that are not listed here that contains
- bits and pieces. Usually you can find them using Archie and
- searching for
- v ariations on the name of the microntroller you are looking for.
-
- f tp.pppl.gov (formerly lyman.pppl.gov)
- - this is a great source of 8051 stuff
- /pub/8051
- /pub/incoming - check this out for new untested/unsorted items
-
- f tp.mcc.ac.uk
- - this is a new 8051 ftp site
-
- f tp.intel.com
- - good source of stuff the MCS-51 and MCS-96 families
- /pub/mcs51 - various development tools and sample code for the
- MCS-51 family
- /pub/mcs96 - various development tools and sample code for the
- MCS-96 family
-
- b ode.ee.ualberta.ca
- - HUGE archive of all sorts of stuff on the 68hc11 (lots of other
- good stuff too!)
- - you'll have fun mucking around this ftp site, there's piles of
- stuff here
- /pub/cookbook
- /pub/motorola
- /pub/motorola/68hc11
- /pub/motorola/mcu11
-
- cherupakha.media.mit.edu (cher.media.mit.edu)
- - HUMONGOUS archive of all sorts of stuff on the 68hc11 including
- the 6.270 robotics project, Mini Board, F1 board, and more
- (lots of other good stuff too!)
- - you'll lose yourself rooting around this ftp site, there's
- piles of stuff here (assemblers, tools, C compilers, plans and
- schematics, and many other items)
- /pub/6270 - tools, docs, schematics, etc. for the MIT 6.270
- robotics project using a 68hc11-based development system
- /pub/6811 - software, schematics, etc. for the 68hc11-based F1
- board
- /pub/incoming - various unsorted or new items
- /pub/miniboard - software, docs, schematics, etc. for the 3"x2",
- 68hc11-based Mini Board controller
-
- listserv@oberon.com
- - mailing list for the Mini Board and 6.270 board
- - send a message containing the word "help" for directions
- - mailing list address: robot-board@oberon.com
- - maintainer: gkulosa@oberon.com
-
- ftp.funet.fi (nic.funet.fi)
- - this is a good source for various microcontrollers
- /pub/microprocs/ (subdirectories include: 1802, 6805, 8048,
- 8051, 8096 and many other microprocessors)
-
- ernie.uvic.ca
- - files provided by local Motorola representative
- /pub (subdirectories include: ibm, dsp96k, dsp56100, dsp56k,
- dsptools, develop, mac, mcu302, mcu332, mcu11, pgmr, mcu16,
- mcu, market, qa, general, m68k, evm, dsp)
-
- ftp.sics.se
- - PIC microcontroller software from the PIC BBS
- - ftp site of Memec Scandinavia, Microchip's Swedish agent.
- /pub/mchipsoft
-
- wpi.wpi.edu
- - basic stamp information PLUS PIC "C" compiler
- /stamp
-
- ftp.luth.se
- /pub/misc/microchip - PIC information
- /pub/languages/assembler - various freeware assemblers
-
- hpcsos.col.hp.com
- /misc/ns32k/beowulf
-
- ftp.netcom.com
- /pub/imagecft - prerelease version of ImageCraft C for 68hc11
-
- info@circellar.com - Email (not ftp)
- - send Email to get information file on services available
- - all Circuit Cellar INK and BYTE related files available
-
- asterix.inescn.pt - FORTH archive
- /pub/forth
-
-
- 6.2) BBSs
-
- The following BBSs have 8051 information:
-
- Circuit Cellar, Inc.
- - contains code from their magazine articles and from the
- original Circuit Cellar articles in Byte magazine, also
- contains many other interesting items
- - The BBS is mentioned in the masthead of each issue (on the
- table of contents page). Excerpts from the BBS appear in Ken
- Davidson's ConnecTime column in every issue with a description
- of how to access the system at the end of every column.
- - (203)871-1988
- - Voice: (203)875-2751
- - Fax: (203)872-2204
-
- Dunfield Development Systems
- - support for their Micro-C C compiler and development tools
- - includes a lot of nice goodies - CHECK THIS OUT!
- - (613) 256-6289
-
- Electronics Now
- - contains code from their magazine articles
- - (516)293-2283
- - 1200/2400, 8N1
-
- Intel American Marketing Applications Support Bulletin Board System
- - 16 lines, hi-speed modems (14.4K)
- - Lots of useful info and files (including design examples)
- - Full ANSI-BBS with color is recommended, but support for just
- about all terminal types is provided
- - 916-356-3600 (24 hours)
- Auto config: 1200 thru 14.4K Baud
- 8 data bits, no parity, 1 stop
-
- Don Lekei BBS
- - support for the PIC line of microcontrollers
- - (604)597-3479 (Canada)
-
- Microchip BBS
- - support for the PIC line of microcontrollers
- - Contact by dialing the same number you would use to get to
- Compuserve at 19200,n,8,1, except that you press +<CR> at the
- (garbage) prompt, followed by MCHIPBBS as the host (instead of
- CIS).
-
- Motorola (Austin Texas) BBS
- - terrific, has piles of stuff, only some of which is on
- bode.ee.ualberta.ca
- - (512) 891-3733 (Austin, Texas)
- - V.32 9600 Baud modems w/ MNP-5
- - 8 Data Bits, No Parity, 1 Stop Bit.
-
- Other Motorola BBSs:
- - Munich, Germany: 49-89-92103-111 (2400 baud)
- - Stuttgart, Germany: 49-7031-275496 (19200 baud)
- - San Diego, California: (619) 279-3907
- - Toronto, Ontario, Canada: (416) 497-8989
-
- Philips Semiconductor (parent company of Signetics)
- - support for: standard logic, programmable logic,
- in-car electronics (planned), 8 and 16 bit microcontrollers,
- I2C software, third party software, discrete semiconductors,
- cross assemblers (general), RF (planned)
- - PHIBBS is located in the Netherlands: +31-40-721102
- - maximum 14400 baud / V42bis
- - 24 hours a day available
- - Help desk: +31-40-722749 (9.00 AM - 16.00 PM CET)
-
- Signetics (Philips Semiconductors)
- - support for their 8051 variants
- - contains many good source code items
- - partially mirrored on ftp.pppl.gov and nic.funet.fi
- - (800)451-6644 or (408)991-2406
-
-
- __________________________________________________________
-
- Copyright (c) 1994 by Russell Hersch, all rights reserved.
- This FAQ may be posted to any USENET newsgroup, on-line service, or BBS
- as long as it is posted in its entirety and includes this copyright
- statement.
- This FAQ may not be distributed for financial gain.
- This FAQ may not be included in commercial collections or compilations
- without express permission from the author.
-
- -----------------------------------
- Russ Hersch - sibit@datasrv.co.il
-